Distributing computing environments, in which various components may be remotely located from each other, are designed around software applications that process data. In such an environment, the software applications in the system may be stored in a central location and data that is to be processed moves from a data store to the central location of the software applications. Since such a system is designed around the methods performed by the software applications, it is considered to be method-centric. A user of the distributed computing environment interacts more directly with the software applications than with the data. The data to be processed is remotely retrieved so that the data moves to where the software applications are located.
The distributed computing environment in which the data moves to the software applications operates well if the data that is moving is small. However, when the data is large, remote retrieval of the data can be a tedious process that can consume large amounts of resources for the transfer. When the data is retrieved, it is only a copy of the data that is sent. If multiple copies of the data are provided to multiple sources for processing and the data is altered during processing, then the integrity of the data becomes difficult to manage. Further, during the transfer of data to the location of the software applications the security of the data is reduced, thus introducing the possibility of corruption, theft, etc., and the possibility of non-compliance with statutory requirements for personal privacy protection.